| автор перевода - Штрек - flash-club.ru | Предыдущая | Следующая | Оглавление |
Flash Player 5; возможности метода расширены в Flash Player 7.
my_array.sort() : Arraymy_array.sort(compareFunction:Function) : Arraymy_array.sort(option:Number|option|...) : Arraymy_array.sort(compareFunction:Function,option:Number|option|...) : Array
compareFunction Произвольная сравнивающая функция,
определяющая порядок сортировки элементов в массиве. Для элементов А и B, результат
compareFunction может иметь одно из следующих значений
:
option Одно /или несколько/ чисел или имён определённых
констант, с оператором | (побитовое ИЛИ) , изменяющие
сортировку, относительно, применяемой по умолчанию. Следующие значения возможны
для option :
Array.CASEINSENSITIVEArray.DESCENDINGArray.UNIQUESORTArray.RETURNINDEXEDARRAY Array.NUMERICДля дополнительной информации об этом параметре, смотрите Array.sortOn().
Примечание: Array.sort() определён в ECMA-262,
но опции сортировки массива, введённые в Flash Player 7, являются особенностью
Flash и расширением спецификации ECMA-262.
Возвращаемое значение зависит от того, какие параметры Вы передаёте :
option 4 или Array.UNIQUESORT
и два /или более/ элемента имеют одинаковый признак, исходя из когорого производится
сортировка, Флэш возвращает 0 и не изменяет массив. Array.RETURNINDEXEDARRAY для option,
Флэш возвращает массив, который отображает результат сортировки, при этом,
не изменяя основной массив.Метод; сортирует элементы в массиве. Сортировка во Флэш производится, согласно Unicode-кодов символов. (ASCII поддерживает Unicode).
По умолчанию, Array.sort() работает, как показано
в следующем списке :
Если Вы хотите произвести сортировку иначе, создайте сортирующую функцию и
передайте её имя параметру compareFunction. Вы могли бы
сделать это, например, если хотите сортировать имена в алфавитном порядке, а
почтовый индекс по убыванию.
Если Вы хотите произвести сортировку по умолчанию, или с параметрами options
, используйте Array.sortOn().
Синтаксис 1: Пример использования Array.sort(), с /и без/, переданных
значений для option :
var fruits_array:Array = new Array("oranges", "apples", "strawberries", "pineapples", "cherries");
trace(fruits_array); // выводится oranges,apples,strawberries,pineapples,cherries
fruits_array.sort();
trace(fruits_array); // выводится apples,cherries,oranges,pineapples,strawberries
fruits_array.sort(Array.DESCENDING);
trace(fruits_array); // выводится strawberries,pineapples,oranges,cherries,apples
Синтаксис 2: В следующем примере используется Array.sort() со
сравнительной функцией :
var passwords_array:Array = new Array("mom:glam", "ana:ring", "jay:mag", "anne:home", "regina:silly");
function order(a, b):Number {
//Элементы, которые сортируются по имени :паролю
//При сортировке используется только часть имени элемента, как ключ.
var name1:String = a.split(":")[0];
var name2:String = b.split(":")[0];
if (name1<name2) {
return -1;
} else if (name1>name2) {
return 1;
} else {
return 0;
}
}
trace("Unsorted:");
//выводится Unsorted:
trace(passwords_array);
//выводится mom:glam,ana:ring,jay:mag,anne:home,regina:silly
passwords_array.sort(order);
trace("Sorted:");
//выводится Sorted:
trace(passwords_array);
//выводится ana:ring,anne:home,jay:mag,mom:glam,regina:silly
| (побитовое ИЛИ), Array.sortOn()
| Посмотреть комментарии LiveDocs | Предыдущая | Следующая | Оглавление | |